home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 21 / CU Amiga Magazine's Super CD-ROM 21 (1998)(EMAP Images)(GB)[!][issue 1998-04].iso / CUCD / Games / ADoom / ADoom_src / r_draw.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-02-07  |  2.6 KB  |  120 lines

  1. // Emacs style mode select   -*- C++ -*- 
  2. //-----------------------------------------------------------------------------
  3. //
  4. // $Id:$
  5. //
  6. // Copyright (C) 1993-1996 by id Software, Inc.
  7. //
  8. // This source is available for distribution and/or modification
  9. // only under the terms of the DOOM Source Code License as
  10. // published by id Software. All rights reserved.
  11. //
  12. // The source is distributed in the hope that it will be useful,
  13. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. // FITNESS FOR A PARTICULAR PURPOSE. See the DOOM Source Code License
  15. // for more details.
  16. //
  17. // DESCRIPTION:
  18. //    System specific interface stuff.
  19. //
  20. //-----------------------------------------------------------------------------
  21.  
  22.  
  23. #ifndef __R_DRAW__
  24. #define __R_DRAW__
  25.  
  26. #ifdef AMIGA
  27. #include "amiga_macros.h"
  28. #endif
  29.  
  30. #ifdef __GNUG__
  31. #pragma interface
  32. #endif
  33.  
  34.  
  35. extern lighttable_t*    dc_colormap;
  36. extern int        dc_x;
  37. extern int        dc_yl;
  38. extern int        dc_yh;
  39. extern fixed_t        dc_iscale;
  40. extern fixed_t        dc_texturemid;
  41.  
  42. // first pixel in a column
  43. extern byte*        dc_source;        
  44.  
  45.  
  46. // The span blitting interface.
  47. // Hook in assembler or system specific BLT
  48. //  here.
  49. extern void R_DrawColumn_040 (void);
  50. extern void R_DrawColumn_060 (void);
  51. extern void R_DrawColumnLow (void);
  52.  
  53. // The Spectre/Invisibility effect.
  54. void    R_DrawFuzzColumn (void);
  55. void     R_DrawFuzzColumnLow (void);
  56.  
  57. // Draw with color translation tables,
  58. //  for player sprite rendering,
  59. //  Green/Red/Blue/Indigo shirts.
  60. void    R_DrawTranslatedColumn (void);
  61. void    R_DrawTranslatedColumnLow (void);
  62.  
  63. void
  64. R_VideoErase
  65. ( unsigned    ofs,
  66.   int        count );
  67.  
  68. extern int        ds_y;
  69. extern int        ds_x1;
  70. extern int        ds_x2;
  71.  
  72. extern lighttable_t*    ds_colormap;
  73.  
  74. extern fixed_t        ds_xfrac;
  75. extern fixed_t        ds_yfrac;
  76. extern fixed_t        ds_xstep;
  77. extern fixed_t        ds_ystep;
  78.  
  79. // start of a 64*64 tile image
  80. extern byte*        ds_source;        
  81.  
  82. extern byte*        translationtables;
  83. extern byte*        dc_translation;
  84.  
  85.  
  86. // Span blitting for rows, floor/ceiling.
  87. // No Sepctre effect needed.
  88. extern void R_DrawSpan_040 (void);
  89. extern void R_DrawSpan_060 (void);
  90.  
  91. // Low resolution mode, 160x200?
  92. void     R_DrawSpanLow (void);
  93.  
  94. void
  95. R_InitBuffer
  96. ( int        width,
  97.   int        height );
  98.  
  99.  
  100. // Initialize color translation tables,
  101. //  for player rendering etc.
  102. void    R_InitTranslationTables (void);
  103.  
  104.  
  105.  
  106. // Rendering function.
  107. void R_FillBackScreen (void);
  108.  
  109. // If the view size is not full screen, draws a border around it.
  110. void R_DrawViewBorder (void);
  111.  
  112.  
  113.  
  114. #endif
  115. //-----------------------------------------------------------------------------
  116. //
  117. // $Log:$
  118. //
  119. //-----------------------------------------------------------------------------
  120.